package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.SetProduct;
import com.ruoyi.system.domain.SetProductCatalog;

import java.util.List;

/**
 * 总成Mapper接口
 * 
 * @author ruoyi
 * @date 2022-11-21
 */
public interface SetProductMapper
{
    /**
     * 查询总成
     * 
     * @param id 总成主键
     * @return 总成
     */
    public SetProduct selectSetProductById(Long id);

    /**
     * 查询总成
     *
     * @param code 总成编码
     * @return 总成
     */
    public SetProduct selectSetProductByCode(String code);

    /**
     * 查询总成列表
     * 
     * @param setProduct 总成
     * @return 总成集合
     */
    public List<SetProduct> selectSetProductList(SetProduct setProduct);

    /**
     * 新增总成
     * 
     * @param setProduct 总成
     * @return 结果
     */
    public int insertSetProduct(SetProduct setProduct);

    /**
     * 修改总成
     * 
     * @param setProduct 总成
     * @return 结果
     */
    public int updateSetProduct(SetProduct setProduct);

    /**
     * 删除总成
     * 
     * @param id 总成主键
     * @return 结果
     */
    public int deleteSetProductById(Long id);

    /**
     * 批量删除总成
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSetProductByIds(Long[] ids);

    /**
     * 校验总成编码是否唯一
     *
     * @param code 总成编码
     * @return 结果
     */
    public SetProduct checkCodeUnique(String code);

    /**
     * 校验总成名称是否唯一
     *
     * @param name 总成名称
     * @return 结果
     */
    public SetProduct checkNameUnique(String name);
}
